Codebook Method for a Multiple Input Multiple Output Wireless System

ABSTRACT

A method for wireless encoding includes encoding wireless multiple input and multiple output signals in accordance with a codebook being one of a discrete codebook restricting elements of codebook entries to be within a predetermined finite set of complex numbers and a constant amplitude codebook including each entry in its codebook having equal column norm and equal row norm. In a preferred embodiment the digital codebook further includes restricting elements of a finite set in the discrete codebook to be in the form of k a +jk b  for a base-k computer and the constant amplitude codebook further includes being obtained through a series of successive householder transformations. In a preferred embodiment the codebook is configured as one of a constrained codebook in which the codebook is configured for multiple scenarios and a discrete codebook.

This application is a divisional of co-pending U.S. patent applicationSer. No. 13/370,441, filed on Feb. 10, 2012, which in turn is adivisional of Ser. No. 12/112,110, filed on Apr. 30, 2008, which in turnclaims the benefit of U.S. Provisional Application No. 60/915,239,entitled “Constrained and discrete precoding codebook design for MIMOsystems”, filed on May 1, 2007, the contents of which are incorporatedby reference herein.

BACKGROUND OF THE INVENTION

The present invention relates generally to wireless communications and,more particularly, to a method for generating a codebook for multipleinput multiple output MIMO wireless systems.

We consider a MIMO system with m transmit antennas at the base stationand a user each with n receive antennas. The complex baseband signalmodel is given by

y=Hx+w

where x is the m×1 transmitted signal vector, H is the n×m channelmatrix, w˜

(0, I) is a circularly symmetric complex additive white Gaussian noisevector, and y is the n×1 received signal vector. We consider a blockfading channel model in which the channel remains constant during thetransmission of each packet (or codeword of length T) and it changesindependently from one block to another, where the distribution of thechannel state is known a priori. The average power constraint is givenby E[x^(H)x]≦P.

We consider maximizing the throughput in single user (SU-) MIMO systems(or sum-rate throughput for multiple user (MU-) MIMO systems) which isusually the primary goal in downlink transmissions. We make thefollowing assumptions: (1) the user feeds back the quantized channelstate via a limited feedback link; (2) based on the feedbackinformation, the base station performs a linear precoding (and onlylinear precoding is allowed) of the transmitted streams.

Let UDV* be the singular value decomposition (SVD) of the channel matrixH. With B bits of feedback, the user quantizes the first k column of V(where k≦min(n, m) is a fixed number predetermined by the base station)using a quantization codebook Q={Q₁, Q₂, . . . , Q₂ ^(B)},Q_(i)∈C^(m×n), as follows

$\begin{matrix}{{\overset{}{V}\left( {1:k} \right)} = {\arg \; \arg\limits_{Q \in Q}{d\left( {{V\left( {1:k} \right)},Q} \right)}}} & (2)\end{matrix}$

where d(.,.) is some distance metric. The codebook design problem andthe appropriate choice of the distance metric have been considered inprior art. The columns of the quantized precoding matrix {circumflexover (V)}(1:k) correspond to possible different streams for this user.

The transmitted signal x from the base station then consists of L datastreams, u₁, u₂, . . . u_(L), sent through column vectors g₁, g₂, . . .g_(L) of a linear precoder G. We have

$\begin{matrix}{x = {{Gu} = {\sum\limits_{i = 1}}_{u_{i}g_{i}}}} & (3)\end{matrix}$

In SU-MIMO systems, we have L=k while in MU-MIMO systems we have L≧k,where one or more than one stream may be intended for each user.

Conventionally, the quantized precoding codebook design for a m×n MIMOsystem deals with a packing of the n dimensional subspaces of an mdimensional vector space over the grassmanian manifold G(m, n).Different performance measures for such a design has been derived basedon different distance metric over grassmanian manifolds. As a result,the element of each codebook entry is generally an arbitrary complexnumber.

Accordingly, there is a need for a method for codebook design thatutilizes vector codebooks to generate the corresponding matrix codebooksfor different transmission ranks, allow efficient precoder selection andthe codebooks can be optimized for different scenarios (propagationenvironments/antenna configurations), In addition, the vector codebookscan also be designed to obtain a single codebook offering a robustperformance across different scenarios.

SUMMARY OF THE INVENTION

In accordance with the invention, a method for wireless encodingincludes encoding wireless multiple input and multiple output signals inaccordance with a codebook being one of a discrete codebook restrictingelements of codebook entries to be within a predetermined finite set ofcomplex numbers and a constant amplitude codebook including each entryin its codebook having equal column norm and equal row norm.

In a preferred embodiment the digital codebook further includesrestricting elements of a finite set in the discrete codebook to be inthe form of k^(a)+jk^(b) for a base-k computer and the constantamplitude codebook further includes being obtained through a series ofsuccessive householder transformations. In a preferred embodiment thecodebook is configured as one of a constrained codebook in which thecodebook is configured for multiple scenarios and a discrete codebook.

The constrained codebook includes a union set configuration wherein aunion of the set of all channel realizations is taken for all scenariosand the codebook is configured for such union set and a successiveapproach wherein the codebook is configured of a smaller size for onescenario. With the successive approach the codebook is configured withfixing the designed entries and expanding the codebook by adding moreentries to the codebook, then configuring new entries responsive to anew scenario and considering a constraint on fixed entries, then againfixing all configured entries and adding more entries and configuringthe more entries responsive to a next scenario until all scenarios areaccounted for.

The discrete codebook configuration includes finding a codebook withminimum distance of at least r which includes picking a random entry atthe beginning and then trying to add other entries to the codebook, ateach step finding the set of all possible entries of M such that theirdistances to all of the already picked entries of the codebook aregreater than r, then picking the one entry which is closest to thecurrent entries of the codebook, repeating this process until finding Kelements which give a solution or to get to the point that the processcannot pick enough elements to form a codebook of size K.

BRIEF DESCRIPTION OF DRAWINGS

These and other advantages of the invention will be apparent to those ofordinary skill in the art by reference to the following detaileddescription and the accompanying drawings.

FIG. 1 is a block diagram of codebook classes in accordance with theinvention; and

FIG. 2 Is a block diagram of codebook designs in accordance with theinvention.

DETAILED DESCRIPTION

Multi-rank beamforming MRBF is an attractive low-complexity precodingscheme which adapts the transmission rank on a fast basis (i.e. once percoherent feedback) and employs a precoding codebook having a nestedstructure. The nested structure allows efficient SVD based selection topick the best precoder codeword from the codebook for the given channelstate. It also allows a low complexity channel quality information(CQI)-metric based precoder selection. Moreover, the nested codebookstructure itself imposes no performance penalty when compared to theoptimal unstructured codebook. The inventive codebook accommodatesantenna selection and the rest of the codebook has its elements from amultiplicative group of size 16 GF(16).

Referring to the diagram 10 of FIG. 1, initially a codebook ispartitioned into classes 11 as one of a discrete codebook 12 or aconstant amplitude codebook 13. A discrete codebook includes a digitalcodebook 14 structure and a constant amplitude codebook includes aconstant amplitude householder codebook 15 structure.

With a Discrete Codebook 12 we restrict the elements of the codebookentries to be within a predetermined finite set of complex numbers, forexample: {1, −1, −j}, or {1, −1, j, −j, 1+j, 1−j, −1+j, −1−j}, or {±1,±2, ±j, ±2j, ±1±j, ±1±2j, ±2, ±j, ±2±2j}, or {e^(2πja) ¹ , e^(2πja) ² ,e^(2πja) ³ , e^(2πja) ⁴ }, or {1, −1, j, −j, a(1+j), a(1−j), a(−1+j),a(−1−j)} where

$a = {\frac{1}{\sqrt{2}}.}$

The advantage of a discrete codebook is a reduction in the complexity ofthe precoder selection algorithm.

With a Digital Codebook 14 we further restrict the elements of thefinite set in the discrete codebook to be in the form of 2^(a)+j2^(b).For examples, any of the first three sets in the above example can beused to generate a digital codebook while the last two sets do notsatisfy the condition. The advantage of the digital codebook is areduction of the code complexity. Digital codebooks can practicallyavoid most of the multiplications by replacing the multiplication bydoing a shift operation. It is well known that for the binary computersthe multiplication in the form of 2^(a)× can be efficiently performed byusing a shift operation. Today's computers are all binary based, thus weuse the elements of the form 2^(a)+j2^(b), otherwise, we can use thegeneral form k^(a)+jk^(b) for the elements considering a possible base-kcomputer.

With a Constant Amplitude Codebook 13 each entry of the codebook hasequal column norm and also equal row norm. The advantage of such acodebook is that the average transmit power across all antennas isequal. Therefore, for the system for which we use one power amplifierper each transmit antenna, the constant amplitude codebook structure isvery essential and useful.

If the codebook has a constant amplitude property and is furthermoreobtained through a series of successive householder transformation it iscalled a Constant Amplitude

Householder Codebook 15. In particular for a system with 4 transmitantenna we use the following. Consider a set of 4 by 1 vectors whereeach elements of the vector is taken from a set of complex number in theform {1, e^(2πja) ¹ , e^(2πja) ² , . . . , e^(2πja) ^(g) } which has g+1elements, and the first element of each vector is 1. Then thehouseholder transformation of any such 4 by 1 vector has the propertythat all elements of such matrix are also phase elements in the forme^(2πja) ¹ .

Referring now to the block diagram 20 of FIG. 2, codebook designs 21 inaccordance with the invention include a discrete codebook design 22, anda constrained codebook design 23. The constrained codebook design 23 isfurther broken down into a union set approach 24 and a successiveapproach 25.

With respect to the Constrained Codebook Design 23, traditionally, thecodebook is optimized for given channel statistics. If we design acodebook for multiple scenarios, i.e., different set of channelstatistics the procedure is called constrained codebook design. Twoapproaches are considered, the union approach 24 and a successiveapproach 25.

In the Union Approach 24 we take the union of the set of all channelrealizations for all scenarios and design a codebook for such union set.

In the Successive Approach 25 we design a codebook of smaller size forone scenario. We fixed the designed entries and expand the codebook byadding more entries to the codebook. We then design the new entries byconsidering the new scenario and considering the constraint on the fixedentries. Again, we fix all the designed entries and add more entry anddesign for the next scenario till all scenarios are treated. Note thatthis second approach requires the optimization of the number of codebookentries that are added in each step, also depends on the order in whichthe scenarios are treated. Intuitively, at each step we pick thescenario which requires smaller codebook for a given performance withrespect to other remaining scenarios.

With respect to the Discrete Codebook Design 22, the approach to designa discrete codebook is to pick a set of entries that have maximumminimum distance. Different distance metric has been considered in theprior art. Since it is a discrete optimization problem, the solution isusually very hard to find. Let M denote all possible entry of a codebookwhere its elements are taken from the finite set G. Define a weightedgraph where each node correspond to a possible entry of the codebook inthe set M and each link between two node a and b is weighted by thedistance between the two entry a and b, e.g., d(a,b). Finding thecodebook of size K is equivalent to finding a clique of size K where theminimum of all the gains in this clique is maximized. Such problem isNP-hard, and thus hard to solve. In the following we propose analgorithm that can solve this problem within reasonable time for mostpractical cases.

Instead of trying to find a codebook with maximum minimum distance, wetake the following approach to find a codebook with minimum distance ofat least r. To do so, we pick a random entry at the beginning and thentry to add other entries to the codebook. At each step, we find the setof all possible entries of M such that their distances to all of thealready picked entries of the codebook are greater than r. Then, we pickthe one which is closest to the current entries of the codebook. Werepeat this process until we find K elements which gives a solution, orto get to the point that we cannot pick enough elements to form acodebook of size K. The detailed algorithm is given in Algorithm 1 inthe IR form. By changing the value of r, we can optimize the designedcodebook. Example of such optimized codebook is given as follows.

The following example gives a codebook which is a ‘discrete codebook’and has ‘householder structure’ and ‘constant amplitude property’. Weconsider the case when 16 possibilities are allowed per-rank and suggestthe following constituent vector codebooks: V¹={v_(i) ¹∈C⁴}_(i=1) ¹⁶,V²=[1,0,0]^(T)∈c³,V³=[1,0]^(T)∈C², where C^(N) denotes the N-dimensionalcomplex space and all the vectors have their first elements to bereal-valued. Matrix code-words are formed using these vectors along withthe unitary Householder matrices of the form,

${{HH}(w)} = {I - {2{\frac{\; {ww}^{*}}{{w}^{2}}\mspace{14mu} \left( {{which}\mspace{14mu} {is}\mspace{14mu} {completely}\mspace{14mu} {determined}\mspace{14mu} {by}\mspace{14mu} {the}\mspace{14mu} {vector}\mspace{14mu} w} \right).}}}$

Let e₁ ^(N)=[1,0, . . . , 0]^(T)∈C^(N). Since householder formula is notdefined for e₁ ^(N)=[1,0, . . . , 0]^(T)∈C^(N), we define HH(e₁^(N))=I_(N×N).

The matrix codebook for 4×4 cases is obtained using the householderformula defined as

${{A\left( {v_{i}^{1},v_{j}^{2},v_{j}^{2},\ldots}\mspace{14mu} \right)} = \left\lbrack {v_{i}^{1},{{{{HH}\left( {v_{i}^{1} - e_{1}^{4}} \right)}\begin{bmatrix}0 \\v_{j}^{2}\end{bmatrix}}{{{HH}\left( {v_{i}^{1} - e_{1}^{4}} \right)}\begin{bmatrix}0 & \; \\{{HH}\left( {v_{j}^{2} - e_{1}^{4}} \right)} & \begin{bmatrix}0 \\v_{k}^{3}\end{bmatrix}\end{bmatrix}}},\ldots}\mspace{14mu} \right\rbrack},{1 \leq i \leq 16},{1 \leq j},{k \leq 1.}$

In the special case of the vector codebook defined in Appendix 1 below,we can simplify the above matrix codebook as a formula as A(v_(i)¹,v_(j) ²,v_(j) ², . . . )=HH(v_(i) ¹−e_(l) ⁴),1≦i≦16, which is thecodebook of size 16 for rank 4 transmission. The codebook for rank oneis obtained by collecting the first columns of these 16 matrices. Thecodebook of rank 3 is the collection of matrices obtained by choosingthe last 3 columns of each matrix, and the codebook of rank 2 isoptimized by selecting 4×2 matrices by choosing the columns as definedin appendix 1 below. For the CQI-metric based precoder selection withlinear minimum mean square error (LMMSE) receiver it has been shown thatdue to the nested structure of the codebook, significant complexitysavings can be accrued by avoiding the redundant computations.

Moreover, the elements of the codeword matrices also belong to amultiplicative group of complex numbers, defined as GF(16) where the 16elements of the group are defined as exp(j2πk/16),1≦k≦16. It can beshown that for a 4TX antenna system, if all elements of the vectorcodebook belong to a multiplicative group of GF(N) then all the elementsof the matrix codebook belong to the same group. Considering the aboveproperty, the number of multiplications is much less than the case wherethe codebook elements are arbitrary complex numbers.

APPENDIX 1 MRBF Vector Codebooks MRBF- Vector codebook in C withelements from GF(16) Vector index First element Second element Thirdelement Fourth element 1 1 1 1 1 2 1 −i  −i  −1  3 1 i I −1  4 1−0.3826 + 0.9239i −0.7070 − 0.7071i  0.9239 − 0.3826i 5 1  0.3826 −0.9239i −0.7070 − 0.7071i −0.9239 + 0.3826i 6 1 −0.7071 + 0.7071i −i  0.7071 + 0.7071i 7 1 −0.7071 + 0.7071i I −0.7071 + 0.7071i 8 1 −0.9239− 0.3826i  0.7071 + 0.7071i −0.3826 − 0.9239i 9 1  0.7071 − 0.7071i −i −0.7071 − 0.7071i 10 1 0 0 0 11 0 1 0 0 12 0 0 1 0 13 0 0 0 1 14 1 i −i −0.7071 − 0.7071i 15 1 −i  −i   0.7071 + 0.7071i 16 1 1 −0.7071 +0.7071i 1 MRBF-Vector codebook in C Second Vector index First elementelement Third element 1 1 0 0 MRBF-Vector codebook in C² Vector indexFirst element Second element 1 1 0 MRBF- rank 2 codebook index Codebookindex 4 × 4 matrix index First column Second column 1 1 1 2 2 2 1 2 3 31 2 4 7 1 3 5 8 1 3 6 10 2 3 7 13 1 3 8 10 3 4 9 10 1 4 10 10 2 4 11 9 13 12 14 3 4 13 10 1 2 14 10 1 3 15 11 3 4 16 12 1 2

Simulation results for the inventive codebook technique show that forboth link level and the improved link level that the MRBF schemeemploying the inventive codebook design provides gains over the discretefourier transform DFT-codebook based schemes at low geometries, hencebenefiting cell-edge users. Moreover, the MRBF scheme with the inventivecodebook design also results in lower complexity than the DFT-codebookdue to its codebook structure as well as its simple vector codebooks.

The proposed MRBF codebook structure in accordance with the inventionutilizes vector codebooks to generate the corresponding matrix codebooksfor different transmission rank and allows efficient precoder selectionvia either the singular value decomposition SVD or continuous qualityimprovement CQI metric. The constituent vector codebooks can beoptimized for different scenarios (propagation environments/antennaconfigurations), which allows us to leverage the flexibility offered bymultiple codebooks. In addition the vector codebooks can also bedesigned to obtain a single codebook offering a robust performanceacross different scenarios. Simulation results demonstrate that the MRBFscheme outperforms the DFT codebook based scheme as well as theconventional Householder codebook based scheme.

The present invention has been shown and described in what areconsidered to be the most practical and preferred embodiments. It isanticipated, however, that departures may be made therefrom and thatobvious modifications will be implemented by those skilled in the art.It will be appreciated that those skilled in the art will be able todevise numerous arrangements and variations which, not explicitly shownor described herein, embody the principles of the invention and arewithin their spirit and scope.

1. A base station used in a multi-rank beamforming wirelesscommunication system, the base station comprising: a precoding unit toprecode a signal in accordance with a codebook comprising a plurality ofcodebook entries per rank, the codebook restricting elements of codebookentries to be within a predetermined finite set of complex numbers, andeach entry in the codebook having both equal column norm and equal rownorm; and a transmission unit to transmit the precoded signal to amobile terminal, wherein the wireless communication system has at least4 transmission antennas.
 2. The base station as in claim 1, wherein thepredetermined finite set consists of numbers in a form of 2^(a)+j2^(b),where a and b are positive integers.
 3. The base station as in claim 1,wherein the predetermined finite set consists of numbers in a form ofk^(a)+jk^(b), where a and b are positive integers.
 4. The base stationas in claim 1, wherein the codebook is obtained through a series ofsuccessive householder transformations.
 5. The base station as in claim4, wherein, for 4 transmit antenna communication, the codebook comprisesa set of 4 by 1 vectors where elements of each vector are taken from aset of complex numbers in a form of {1, e^(2πja) ¹ , e^(2πja) ² , . . ., e^(2πja) ^(g) }, and the first element of each vector is 1, where a₁,. . . , and a_(g) are complex numbers.
 6. The base station as in claim1, wherein the codebook is configured for multiple scenarios.
 7. Thebase station as in claim 6, wherein the multiple scenarios comprise adifferent set of channel statistics.
 8. The base station as in claim 7,wherein the codebook comprises a union set configuration wherein a unionof the set of all channel realizations is taken for all scenarios andthe codebook is configured for such union set.
 9. The base station as inclaim 6, wherein the codebook is obtained through a successive approachwherein the codebook is configured of a smaller size for one scenario.10. The base station as in claim 6, wherein the codebook is obtainedthrough a successive approach wherein the codebook is configured withfixing designed entries and expanding the codebook by: adding moreentries to the codebook; configuring new entries responsive to a newscenario and considering a constraint on fixed entries; fixing allconfigured entries; adding more entries; and configuring the moreentries responsive to a next scenario until all scenarios are accountedfor.
 11. The base station as in claim 10, wherein the codebook isobtained through optimization of the number of codebook entries that areadded in each step, and depends on the order in which the scenarios aretreated, picking at each step the scenario which requires a smallercodebook for a given performance with respect to other remainingscenarios.
 12. The base station as in claim 1, wherein the predeterminedfinite set of complex numbers consists of {1, −1, j, −j}.
 13. The basestation as in claim 1, wherein the predetermined finite set of complexnumbers consists of {1, −1, j, −j, 1+j, 1−j, −1+j, −1−j}.
 14. The basestation as in claim 1, wherein the predetermined finite set of complexnumbers consists of {±1, ±2, ±j, ±2j, ±1±j, ±1±2j, ±2, ±j, ±2±2j}. 15.The base station as in claim 1, wherein the predetermined finite set ofcomplex numbers consists of {e^(2πja) ¹ , e^(2πja) ² , e^(2πa) ³ ,e^(2πja) ⁴ }, where a₁, a₂, a₃, and a₄ are complex numbers.
 16. The basestation as in claim 1, wherein the predetermined finite set of complexnumbers consists of {1, −1, j, −j, a(1+j), a(1−j), a(−1+j), a(−1−j)},where $a = {\frac{1}{\sqrt{2}}.}$
 17. A user equipment used in amulti-rank beamforming wireless communication system, the user equipmentcomprising: a receiving unit to receive from a base station a signalprecoded in accordance with a codebook comprising a plurality ofcodebook entries per rank, wherein the codebook restricts elements ofcodebook entries to be within a predetermined finite set of complexnumbers and each entry in the codebook has both equal column norm andequal row norm, and wherein the wireless communication system has atleast 4 transmission antennas.
 18. A method implemented in a multi-rankbeamforming wireless communication system, the method comprising:transmitting from a base station to a user equipment a signal precodedin accordance with a codebook comprising a plurality of codebook entriesper rank, wherein the codebook restricts elements of codebook entries tobe within a predetermined finite set of complex numbers and each entryin the codebook has both equal column norm and equal row norm, andwherein the wireless communication system has at least 4 transmissionantennas.